package com.ruoyi.wms.domain.bo;

import com.ruoyi.wms.domain.entity.MailboxStatistics;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.mybatis.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import io.github.linpeilie.annotations.AutoMapper;

import java.math.BigDecimal;

/**
 * 数据统计业务对象 mailbox_statistics
 *
 * @author zcc
 * @date 2024-12-14
 */

@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = MailboxStatistics.class, reverseConvertGenerate = false)
public class MailboxStatisticsBo extends BaseEntity {

    /**
     * ID
     */
    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 日新增数量
     */
    @NotNull(message = "日新增数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long todayQuantity;

    /**
     * 周新增数量
     */
    @NotNull(message = "周新增数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long weekQuantity;

    /**
     * 月新增数量
     */
    @NotNull(message = "月新增数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long monthQuantity;

    /**
     * 当前信件总数
     */
    @NotNull(message = "当前信件总数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long total;

    /**
     * 已处理数量
     */
    @NotNull(message = "已处理数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long processedTotal;

    /**
     * 待处理数量
     */
    @NotNull(message = "待处理数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long pendingTotal;

    /**
     * 当日处理效率
     */
    @NotNull(message = "当日处理效率不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal efficiency;

    /**
     * 当日处理数量
     */
    @NotNull(message = "当日处理数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long todayProcessedTotal;


}
